package com.spark.modules.generation.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.spark.common.annotation.Dict;
import com.spark.common.annotation.query.Query;
import com.spark.common.constants.QueryConstants;
import com.spark.common.core.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;

/**
 * 页面设计
 *
 * @author LYCHEE
 * @date 2025/03/05 15:47
 */
@Data
@TableName("gen_design_page")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
public class GenDesignPage extends BaseEntity {

    /**
     * 页面类型
     *  : table表格 other其他
     */
    @Query(QueryConstants.QUERY_EQ)
    @NotBlank(message = "页面类型不能为空")
    @Dict(dictCode = "online_page_type")
    private java.lang.String pageType;

    /**
     * 布局
     *  : table表格 colTable左侧操作表格
     */
    @Query(QueryConstants.QUERY_EQ)
    @NotBlank(message = "布局不能为空")
    @Dict(dictCode = "online_page_layout")
    private java.lang.String layout;

    /**
     * 主模型
     */
    @Query(QueryConstants.QUERY_EQ)
    @NotBlank(message = "主模型不能为空")
    @Dict(dictTable = "online_model", dictCode = "model_code", dictText = "model_name")
    private java.lang.String mainModel;

    /**
     * 附模型
     */
    @Dict(dictCode = "yes_or_no")
    private java.lang.Integer genSql;

    /**
     * 父级菜单
     */
    private java.lang.String parentMenuId;

    /**
     * 菜单名称
     */
    private java.lang.String menuName;

    /**
     * 是否授权（0是 1否）
     */
    @Dict(dictCode = "yes_or_no")
    private java.lang.Integer isAuth;

    /**
     * 授权编码
     */
    private java.lang.String auths;

    /**
     * 页面配置项
     */
    private java.lang.String pageParams;
}
